Consulta de Guías Docentes



Academic Year/course: 2023/24

439 - Bachelor's Degree in Informatics Engineering

30235 - Commercial Processors


Syllabus Information

Academic year:
2023/24
Subject:
30235 - Commercial Processors
Faculty / School:
110 - Escuela de Ingeniería y Arquitectura
Degree:
439 - Bachelor's Degree in Informatics Engineering
ECTS:
6.0
Year:
3
Semester:
Second semester
Subject type:
---
Module:
---

1. General information

 

This subject continues the line started with the subjects "Architecture and Organization I and II", seeking to increase and deepen the theoretical and practical knowledge about computer organization, processor architecture and its relationship with the compiler.

The course ends with examples of the main architectures on the market, which will allow us to: i) obtain efficient codes (in terms of resources, time or consumption) for all of them, ii) analyze, evaluate and select the most suitable hardware platforms for different fields, (iii) to develop new processors adapted to specific needs.

This is a subject whose evaluable contents alone do not yet give the student direct capabilities to contribute to the achievement of the SDGs.

To take this subject it is recommended to have taken the course Computer Architecture and Organization 2.



2. Learning results

 

Know performance enhancement techniques, such as multithreading and out-of-order execution, and knows how to analyze their influence on system performance.

Know the architectures of contemporary general purpose processors, identifying their objectives (cost, speed, power consumption, etc.). Be capable of improving the performance of target-critical code, manually or by guiding the compiler through the compilation options.

Know repertoire extensions (multimedia, security, etc.) and the role of the compiler in their exploitation (vectorization, iterative compilation, etc.).

Know various specific-purpose architectures, such as microcontrollers, DSPs, multimedia processors, graphics processors, or network processors.

 

3. Syllabus

 

Introduction

Module 1: Processor organization

  • Segmented review: exception handling

  • Multicycle operations. Execution out of order

  • Register and memory renaming. Prediction of jumps

  • Multithreading

Module 2: Organization of the memory hierarchy

  • Review: basic performance enhancement techniques

  • Advanced performance enhancement techniques

  • Segmented access to caches

  • Multiport Caches

  • Non-blocking caches

  • Pre-search

Module 3: Machine language architecture Design options

  • RISC example: ARM

  • Example CISC: Intel

  • Example VLIW: DSP TMS

Module 4: Compilation

  • Compilation stages

  • Register assignment and instruction scheduling

  • Optimization

  • Hierarchy-oriented code optimization

 

4. Academic activities

 

  • Lectures: the main aspects of each concept will be presented.

  • Problem solving classes: problems related to the syllabus will be solved. These classes will be interspersed with the lectures.

  • Assisted laboratory practice: the main components of a high performance processor will be implemented in a simulator.

  • Study and personal work.

  • Completion of the corresponding evaluation tests

 

5. Assessment system

 

The assessment will consist of three parts:

1. Defense of the laboratory practicals (30 points).

2. Presentation of results on practical work (10 points).

3. Theory and problems exam (60 points).

 

To pass the subject you must obtain at least 50 points out of the total and at least 24 points out of 60, that is, a 4 out of 10, in the exam. In the case of not achieving a 4 out of 10 in the exam, the grade in the call will coincide with the obtained in the exam.

An added section may be requested in the examination to replace the marks for parts 1 and 2.

 


Curso Académico: 2023/24

439 - Graduado en Ingeniería Informática

30235 - Procesadores comerciales


Información del Plan Docente

Año académico:
2023/24
Asignatura:
30235 - Procesadores comerciales
Centro académico:
110 - Escuela de Ingeniería y Arquitectura
Titulación:
439 - Graduado en Ingeniería Informática
Créditos:
6.0
Curso:
3
Periodo de impartición:
Segundo semestre
Clase de asignatura:
---
Materia:
---

1. Información básica de la asignatura

En esta asignatura se continúa la línea iniciada con las asignaturas “Arquitectura y Organización I y II”, buscando aumentar y profundizar los conocimientos teóricos y prácticos sobre organización del computador, arquitectura del procesador y su relación con el compilador.

Se termina conociendo ejemplos de las principales arquitecturas del mercado, lo que permitirá: i) conseguir códigos eficientes (en recursos, tiempo o consumo) para todas ellas, ii) analizar, evaluar y seleccionar las plataformas hardware más adecuadas para distintos ámbitos, iii) desarrollar nuevos procesadores adaptados a necesidades específicas.

Se trata de una asignatura cuyos contenidos evaluables por sí solos todavía no dan capacidades directas al estudiante para aportar a la consecución de los ODS.

Para cursar esta asignatura se recomienda haber cursado la asignatura Arquitectura y organización de computadores 2.

2. Resultados de aprendizaje

Conoce técnicas de aumento de prestaciones, tales como multithreading y ejecución fuera de orden, y sabe analizar su influencia en el rendimiento del sistema.

Conoce las arquitecturas de los procesadores contemporáneos de propósito general, identificando sus objetivos (coste, velocidad, consumo, etc.). Es capaz de mejorar el rendimiento de códigos críticos para objetivos concretos, de forma manual o guiando al compilador mediante las opciones de compilación.

Conoce extensiones de repertorio (multimedia, seguridad, etc.) y el papel del compilador en su explotación (vectorización, compilación iterativa, etc.).

Conoce varias arquitecturas de propósito específico, tales como microcontroladores, DSPs, procesadores multimedia, procesadores gráficos, o de red.

3. Programa de la asignatura

Presentación

Módulo 1: Organización del procesador

  • Repaso segmentados: tratamiento de excepciones
  • Operaciones multiciclo. Ejecución fuera de orden
  • Renombre de registros y memoria. Predicción de saltos
  • Multithreading

Módulo 2: Organización de la jerarquía de memoria

  • Repaso: técnicas básicas de mejora de prestaciones
  • Técnicas avanzadas de mejora de prestaciones
  • Acceso segmentado a caches
  • Caches multipuerto
  • Caches no bloqueantes
  • Prebúsqueda

Módulo 3: Arquitectura de lenguaje máquina Opciones de diseño

  • Ejemplo RISC: ARM
  • Ejemplo CISC: Intel
  • Ejemplo VLIW: DSP TMS

Módulo 4: Compilación

  • Etapas de compilación
  • Asignación de registros y planificación de instrucciones
  • Optimización
  • Optimización de código orientada a la jerarquía

4. Actividades académicas

  • Clases magistrales: se presentarán los aspectos principales de cada concepto.
  • Clases de resolución de problemas: se resolverán problemas relacionados con el temario. Estas clases se intercalarán con las clases magistrales.
  • Prácticas de laboratorio asistidas: se implementarán los principales componentes de un procesador de altas prestaciones en un simulador.
  • Estudio y trabajo personal.
  • Realización de las pruebas de evaluación correspondientes

 

5. Sistema de evaluación

La evaluación constará de tres partes:

  1. Defensa de las prácticas de laboratorio (30 puntos).
  2. Presentación de resultados sobre trabajo práctico no presencial (10 puntos).
  3. Examen de teoría y problemas (60 puntos).

 

Para superar la asignatura se deberá obtener al menos 50 puntos sobre el total y al menos 24 puntos sobre 60, es decir, un 4 sobre 10, en el examen. En el caso de no alcanzar un 4 sobre 10 en el examen, la nota en la convocatoria coincidirá con la obtenida en dicho examen.

Se podrá pedir la realización de un apartado añadido en el examen para sustituir las notas de las partes 1 y 2.